home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Cookbook USA: Drips, Dressings & Sauces
/
Cookbook USA - Drips, Dressings & Sauces (1997)(MicroMedia).iso
/
ch15
/
frmbrows.frm
< prev
next >
Wrap
Text File
|
1996-07-06
|
10KB
|
354 lines
VERSION 2.00
Begin Form frmBrowse
BackColor = &H00FFFF80&
Caption = "Browse Titles"
ClientHeight = 5745
ClientLeft = 1770
ClientTop = 3525
ClientWidth = 7365
Height = 6150
Icon = FRMBROWS.FRX:0000
Left = 1710
LinkTopic = "Form1"
ScaleHeight = 5745
ScaleWidth = 7365
Top = 3180
Width = 7485
Begin CommandButton cmdPrev
BackColor = &H00FF0000&
Caption = "Pre&vious"
Height = 495
Index = 1
Left = 6120
TabIndex = 6
Top = 4410
Width = 1215
End
Begin CommandButton cmdExitCB
Caption = "E&xit CBWin"
Height = 475
Left = 6120
TabIndex = 7
Top = 4995
Width = 1215
End
Begin CommandButton cmdPrevious
BackColor = &H00FF0000&
Caption = "&Previous 25"
Height = 495
Left = 6120
TabIndex = 5
Top = 2520
Width = 1215
End
Begin CommandButton cmdNext
BackColor = &H00FF0000&
Caption = "&Next 25"
Height = 495
Left = 6120
TabIndex = 4
Top = 1920
Width = 1215
End
Begin ListBox lstRecipeTitles
BackColor = &H00FFFFC0&
Height = 4905
Left = 1680
TabIndex = 3
Top = 600
Width = 4335
End
Begin ListBox lstRecipeNumbers
BackColor = &H00FFFFC0&
Height = 4905
Left = 240
TabIndex = 0
Top = 600
Width = 1455
End
Begin Label Label2
Alignment = 2 'Center
BackColor = &H00FF80FF&
BorderStyle = 1 'Fixed Single
Caption = "Title"
Height = 255
Left = 1680
TabIndex = 2
Top = 360
Width = 4335
End
Begin Label Label1
Alignment = 2 'Center
BackColor = &H00FF80FF&
BorderStyle = 1 'Fixed Single
Caption = "Recipe Number"
Height = 255
Left = 240
TabIndex = 1
Top = 360
Width = 1455
End
End
' frmBrowse displays a pair of list boxes containing up to
' 25 recipe titles and their recipe numbers. The user may
' go straight to a particular recipe by double clicking
' that recipe, or return to frmMain by clicking exit.
'
' The recipes shown can be incremented and decremented in
' groups of 25 by clicking on the appropriate command
' buttons.
Dim FirstTRInList
Option Explicit
Sub cmdExitCB_Click ()
MakeMouseCursorHourglass
frmCookBook.Show
Hide
Browsing = False
Unload Me
MakeMouseCursorDefault
End Sub
'--------------------------------------------------------------------------
Sub cmdNext_Click ()
Dim x As Integer
Dim r As Integer
Dim Title As String
Dim Count As Long
lstRecipeNumbers.Clear
lstRecipeTitles.Clear
If FirstTRInList <> 0 Then
x = GotoTRNumber(TRListID, FirstTRInList)
x = GetNextTRNumber(TRListID, TRNumber)
FirstTRInList = 0
End If
MakeMouseCursorHourglass
frmStatusBar.Show
frmStatusBar.StatusBar.TotalItems = 25
x = LastResultTRCount(Count)
If Count > 0 And Count < 25 Then
frmStatusBar.StatusBar.TotalItems = CInt(Count)
End If
frmStatusBar.StatusBar.CompletedItems = 0
frmStatusBar.Caption = "Retrieving Recipe Titles"
r = 0
For x = 1 To 25
Title = GetTitle()
If Title = "" Then
x = x - 1
Else
lstRecipeNumbers.AddItem CStr(TRNumber)
lstRecipeTitles.AddItem GetTitle()
If x <= frmStatusBar.StatusBar.TotalItems Then
frmStatusBar.StatusBar.CompletedItems = x
End If
End If
r = GetNextTRNumber(TRListID, TRNumber)
If r = -2 Then
lstRecipeNumbers.AddItem "***"
lstRecipeTitles.AddItem "*** No more recipes ***"
Exit For
End If
Next x
MakeMouseCursorDefault
frmStatusBar.Hide
End Sub
Sub cmdPrev_Click (Index As Integer)
frmCookBook.Show
Hide
MakeMouseCursorDefault
End Sub
'--------------------------------------------------------------------------
Sub cmdPrevious_Click ()
Dim x As Integer
Dim r As Integer
Dim Title As String
lstRecipeNumbers.Clear
lstRecipeTitles.Clear
MakeMouseCursorHourglass
frmStatusBar.Show
frmStatusBar.StatusBar.TotalItems = 25
frmStatusBar.StatusBar.CompletedItems = 0
frmStatusBar.Caption = "Retrieving Recipe Titles"
r = 0
For x = 1 To 50
r = GetPreviousTRNumber(TRListID, TRNumber)
If r = -2 Then Exit For
Next x
For x = 1 To 25
Title = GetTitle()
If Title = "" Then
x = x - 1
Else
lstRecipeNumbers.AddItem CStr(TRNumber)
lstRecipeTitles.AddItem GetTitle()
If x <= frmStatusBar.StatusBar.TotalItems Then
frmStatusBar.StatusBar.CompletedItems = x
End If
End If
r = GetNextTRNumber(TRListID, TRNumber)
If r = -2 Then Exit For
Next x
MakeMouseCursorDefault
frmStatusBar.Hide
End Sub
'--------------------------------------------------------------------------
Sub Form_Load ()
' centering the form
Me.Left = (screen.Width - Me.Width) / 2
Me.Top = Abs((screen.Height - Me.Height) / 2)
Browsing = True
Call cmdNext_Click
FirstTRInList = 0
End Sub
'--------------------------------------------------------------------------
Function GetTitle ()
Dim r As Integer
Dim epp As Integer
Dim eap As Integer
Dim RecordNumber As Integer
Dim RecipeTextLength As Integer
Dim RecipeText As String
ReDim RecipeTRText(1) As String * 4000
Dim RecipeOffset As Long
Dim RecipeMaxBuffer As Integer
Dim x As Integer
ReDim DecompText(1) As String * 16000
Dim DecompLength As Integer
Dim CompLength As Integer
ReDim CompString(1) As String * 4000
RecipeText = ""
RecipeOffset = 0
RecipeMaxBuffer = 4000
Do
r = GetTR(TRNumber, RecipeTRText(1), RecipeMaxBuffer, RecipeTextLength, RecipeOffset)
If TRNumber = 0 Then
MsgBox "Error opening database: TRNumber 0"
Hide
Load frmCookBook
frmCookBook.Show
End If
If r = 0 Then
If RecipeTextLength < 4000 Then
RecipeTRText(1) = Left$(RecipeTRText(1), RecipeTextLength)
End If
'Decompress
DecompText(1) = ""
DecompLength = 16000 'Max output bufsize. Returned as actual length
CompString(1) = RecipeTRText(1)
CompLength = RecipeTextLength
r = TextDecompress(CompString(1), CompLength, DecompText(1), DecompLength)
If r <> 0 Then
MsgBox "Decompression Failure." & Chr$(13) & Chr$(10) & "TRListID: " & CStr(TRListID)
r = CloseTRList(TRListID)
Hide
Load frmCookBook
frmCookBook.Show
End If
RecipeText = RecipeText + Left$(DecompText(1), DecompLength)
RecipeOffset = RecipeOffset + RecipeTextLength
ElseIf r = -2 Then
RecipeText = Mid$(RecipeText, 5)
epp = InStr(2, RecipeText, Chr$(213))
If epp > 5 Then
RecipeText = Mid$(RecipeText, 3, epp)
eap = InStr(RecipeText, Chr$(10))
If eap > 0 Then
RecipeText = Left$(RecipeText, eap)
End If
Exit Do
Else
RecipeText = ""
Exit Function
End If
End If
Loop
GetTitle = Left$(RecipeText, Len(RecipeText) - 3)
End Function
'--------------------------------------------------------------------------
Sub lstRecipeNumbers_Click ()
lstRecipeTitles.ListIndex = lstRecipeNumbers.ListIndex
End Sub
'--------------------------------------------------------------------------
Sub lstRecipeNumbers_DblClick ()
Dim x
TRNumber = CLng(lstRecipeNumbers.Text)
x = GotoTRNumber(TRListID, TRNumber)
x = GetNextTRNumber(TRListID, TRNumber)
FirstTRInList = lstRecipeNumbers.List(0)
MakeMouseCursorHourglass
frmRecipe.Show
Hide
MakeMouseCursorDefault
End Sub
'--------------------------------------------------------------------------
Sub lstRecipeTitles_Click ()
lstRecipeNumbers.ListIndex = lstRecipeTitles.ListIndex
End Sub
'--------------------------------------------------------------------------
Sub lstRecipeTitles_DblClick ()
Dim x
TRNumber = CLng(lstRecipeNumbers.Text)
x = GotoTRNumber(TRListID, TRNumber)
x = GetNextTRNumber(TRListID, TRNumber)
FirstTRInList = lstRecipeNumbers.List(0)
MakeMouseCursorHourglass
frmRecipe.Show
Hide
MakeMouseCursorDefault
End Sub